「AWS Black Belt Tech Webinar 2014 – Amazon WorkSpaces」レポート
こんにちは、虎塚です。
本日夕方に開催された「AWS Black Belt Tech Webinar 2014 - Amazon WorkSpaces」を聴講したので、レポートします。
Workspacesは、つい先日東京リージョンで使えるようになりましたね。
今回の講師は、アマゾンデータサービスジャパンの渡邉源太さんで、東京リージョンローンチを記念して、Webinarを大阪から配信とのことです。
Amazon WorkSpacesとは
Amazon WorkSpacesは、(小売のAmazon.comと同じような)黒い矢印がついた、AWSサービスの中では珍しいロゴ。Zocaloも同様。
30以上あるAWSのサービスの中で、WorkspacesとZacaloは「アプリケーション」というカテゴリに位置する。昔は「コンピュート処理」だったが、移動した。「アプリケーション」は、「モバイル」と合わせてAWSがいま力を入れているカテゴリの1つである。
Amazon WorkSpaces
- AWSクラウド上に仮想デスクトップを立ち上げて、エンドユーザに提供するサービス
- 任意のデバイス(Windows/Mac/iPad/Kindle Fire/Androidタブレットなど)から、ネットワークを通じてどこからでもアクセスできる
- Management Consoleを数回クリックするだけで、新しいDesktopを作ったり、ユーザをプロビジョンしたりできる
- 既存の仮想デスクトップ製品よりも使いはじめるのが簡単で、運用も簡単
自社構築 vs. EC2 vs. フルマネージド
仮想デスクトップの運用方法によって、顧客が担当する作業の種類には、大きな違いが生じる。
- オンプレミスで運用した場合
- エンドユーザにデスクチップやアプリケーションを提供するまでに、ハードウェアの電源の調整やラッキング、サーバメンテナンスを含め、たくさんの作業が必要
- XenDesktopのような製品をAWSで運用した場合
- オンプレミス運用より随分ラクになるが、OSへのパッチ当て、ミドルウェア導入、高可用性対応、バックアップなどの作業は依然として必要
- WorkSpaces
- アプライアンス製品をAWS上で運用したときに残った作業も、AWSが提供してくれる。デスクトップ上にアプリケーションをインストールするだけで、すぐに使える
WorkSpaces Bundle
利用できるWorkSpaceは、現在は4種類ある。Bundleによってハードウェアのスペックやインストールされているアプリケーションが異なる。
- Standard
- メモリ3.75GB、ユーザストレージ50GBを持つ標準構成
- Standard Plus
- Standardと同じスペックで、MS Officeとトレンドマイクロのアンチウイルスがインストールされている(アプリケーションのライセンス料も含まれる)
- Performance
- Standardのほぼ倍のスペックで、Standardと同じアプリケーション構成
- Performance Plus
- Performanceと同じスペックで、MS Officeとトレンドマイクロのアンチウイルスがインストールされている
- (参考)WorkSpacesのバンドル
※「ユーザーストレージ」とは、ユーザ専用領域(Dドライブ)のサイズのこと。
セットアップ
Amazon WorkSpacesセットアップ
WorkSpacesのセットアップ方法は2種類ある。
- Quick Setup
- 自動的に作成
- 20分くらいでWorSpaceを利用できる
- このセットアップ方法は、初回セットアップ時だけ使える。作った環境をたとえ消しても、Quick Setupをもう一度実行することはできない
- Advanced Setup
- VPCやディレクトリを選べる
- 社内のActive Directoryと統合できる
WorkSpacesをちょっとだけ試すならQuick Setupを使い、既存VPCや社内環境と繋ぐにはAdvanced Setupを使う。
Quick Setup
- WorkSpacesのBundleを選択する
- ユーザを作成する
- WorkSpacesのプロビジョンを開始する
なお、東京リージョンでWorkSpacesを利用する場合のみ、環境の言語に日本語か英語かを選択できる。東京リージョンローンチ時にデスクトップの日本語化も合わせて行ったため。日本語を選択すれば、OSやデスクトップを日本語で利用できる。
WorkSpaceのステータス確認
- WorkSpacesのプロビジョンを開始して20分ほどたち、Statusが「Running」に変わったら完了
- ユーザに完了がメールで通知される
メールの受信とユーザーの登録
ユーザがシステムから受け取るメールは従来英語だったが、東京リージョンで利用した場合は日本語と英語で記述されている。日本の顧客にも分かりやすい。
ユーザは、メールに記載されたリンクをクリックして、自分のパスワードを設定する。
つまり、管理者はユーザの作成時に、ユーザ名とログオンネームだけを設定する。初期パスワードはユーザ自身が設定するので、セキュアに利用できる。
WorkSpacesクライアントのダウンロード
http://clients.amazonworkspaces.com/からクライアントをダウンロードする。メールにリンクが記載されているので、クリックしてもよいし、このURLに直接アクセスしてもよい。
Windows, Mac, Android, iOS用のクライアントがある。複数のデバイスにインストールしてもよい。
WorkSpaceへの接続
ユーザ名とパスワードを入力して、サインインするだけ。簡単!
Quick Setupで実行されるプロセス
Quick Setupで実行されるプロセスを時系列に追うと、次のようになる。
- WorkSpaces用のVPCを作成
- VPCにユーザとWorkSpaces管理用のディレクトリをセットアップ
- ディレクトリ管理者アカウントを作成
- ユーザーアカウントの作成とディレクトリへの追加
- WorkSpaceインスタンスの作成
- ユーザーへの招待メールの送信
上記の一連の流れが、バックグラウンドで自動的に実行される。
Quick Setupで作成される環境
InternetGatewayがアタッチされたVPCの中で、Domain Controllerが2つのAvailabilityZoneにそれぞれ1台ずつ(合計2台)配置される。それぞれのAvailabilityZoneにWorkSpacesが作られる。
Advanced Setup
既存VPCやオンプレミスのActive Directoryと連携する場合は、こちらの方法を使う。
- 前提としてVPCをあらかじめ作っておく
- ディレクトリを作成する
- WorkSpaceをプロビジョンする
ディレクトリ作成についての詳細は、次の項で説明する。
ディレクトリの選択
ディレクトリを作成する際に、種類を選択する。
- WorkSpaces Cloud Directory
- QuickSetupで作成されるディレクトリと同じ環境が作成される
- Active Directory管理者がいなくても簡単に立てられる
- Domain Controller(ディレクトリサービス)の管理はAWSにおまかせ
- すぐにWorkSpacesを使いたい場合に利用する
- WorkSpaces Connect
- 社内のActive Directory環境と連携することができるので、別途ディレクトリを立てる必要がないのが特長
- 既存のユーザやグループによる権限付与ができる
- グループポリシーによる集中管理ができる
WorkSpaces Cloud Directory
- ドメインと管理者アカウントを作成する
- Organization Name: AWS内でユニークな名前である必要がある
- Directory DNS
- NetBIOS Name
- Administrator Password
- ディレクトリを作るVPCを選択する
- 異なるAvailabilityZoneに2つ以上のSubnetが存在するVPCである必要がある
作成されたCloud Directory
- ディレクトリサービスはMulti-AZ構成で展開される
- EC2インスタンスとして顧客のManagement Consoleから見えるようにはならない
- EC2インスタンスとしての管理(Stop/Start)は不要
- Domain ControllerのIPアドレスだけがManagement Consoleから見える
- 従来のActive Directory管理ツールから管理できる
- Redircmp.exe
- イベントビューア
- Active Directory ユーザーとコンピュータ
ディレクトリの管理
- Active Directory管理ツールをインストールすることで、WorkSpaces Cloud Directoryの管理が可能
- %SystemRoot%¥system32¥dsa.msc
Security Groupの設定
- Domain Controller用およびWorkSpaces用のSecurity Groupが自動作成される
- _controllers
- _workspacesMembers
- Management ConsoleのEC2のところに見える。確認や設定変更ができる
- WorkSpacesからドメインにログオンできるように、Domain Controllerとの通信はデフォルトで許可されている
- 特に追加の要件がない限り、そのままでよい
Domain Controllerとの疎通のために開放が必要なポートはたくさんある。(DNS, Kerberos, LDAP...詳細は発表スライドをご確認ください)
RPCのための動的ポートは、レンジで許可する必要がある点に注意する。Windowsのバージョンによって異なるので、自社の環境に合わせる。次のサポートページを参照。
ディレクトリ設定
- Organizational Unit (OU)
- Active Directoryの中の管理単位
- デフォルトではComputer OUにコンピュータが作成される
- 分けたい場合は特定のOUを指定して変更できる
- Security Group
- WorkSpacesのSecurity Groupを指定する
- デフォルトのSecurity Groupと合わせて有効になるので、デフォルトの設定はデフォルトSecurity Groupに残し、追加要件を加えたSecurity Groupを新規に付けるといった運用が可能
WorkSpaces Connect
WorkSpaces Connectは、既存のActive Directoryと接続して、ディレクトリ認証を行う仕組み。前提として次のものが必要。
- VPC
- Internet Gateway
- (オンプレミスのActive Directoryと連携させる場合)VPN接続またはDirect Connect
- ドメイン アカウント
- ユーザーとグループへの読み取り権限と、コンピュータ アカウントの作成権限が必要
- ドメインのAdministratorである必要はない
- DNSサーバ/Domain Controllerの2台のIPアドレス
社内ディレクトリとの統合
次のようなイメージになる。
- WorkSpacesが配置されたVPCは、オンプレミス環境とVPNまたはDirect Connectで接続する
- ユーザはインターネットを通じてWorkSpaces APIのエンドポイントへ接続する
- 443番ポートのHTTPSでアクセスして、OAuth Gatewayでパスワード認証をする
- 認証がOKならWorkSpacesにログインできる
WorkSpaces Connectの作成
先ほどのWorkSpaces Cloud Directoryとの違いは、既存ドメインの適切な権限のあるアカウントとパスワードを指定すること。
- Active Directoryドメイン情報を入力
- Organization Name
- Directory DNS
- NetBIOS Name
- Account username
- Administrator Password
- ディレクトリを作るVPCを選択する
- 異なるAvailabilityZoneに2つ以上のSubnetが存在するVPCである必要がある
作成されたWorkSpaces Connect
- VPC上に認証用のプロキシが作成される
- WorkSpaces自体が認証用プロキシのように振る舞い、Domain Controllerに対して認証する。WorkSpaces自体がユーザアカウントやパスワードを持たないのがポイント
- 既存のユーザ認証およびポリシーを適用できる
Multi-Factor Authentication
WorkSpaces Connectでは、オンプレミスにあるRADIUSサーバを利用した多要素認証に対応している(WorkSpaces Connect限定)。
- RADIUS対応であればどのプロダクトでも使える
- Symantec Validation and ID Protection Service (VIP) とMicrosoft RADIUS Serverでテスト済み
- PAP/CHAP/MS-CHAP1/MS-CHAP2をサポートしていれば、他のプロダクトでもOK
(例)Google Authenticatorを使った方法
例として、無償のGoogle Authenticatorを使った場合の認証の流れを説明。
- クライアント側: Google Authenticator
- サーバ側: OSSのFreeRADIUSとGoogle AuthenticatorのPAM(Pluggable Authentication Module)
※ユーザ登録時はGUIがないのでコマンドライン操作になる。
- デバイスから初めてWorkSpacesを使う時に、招待メールに記載されていた登録コードを入力する
- Active Directoryで利用しているユーザ名とパスワードを入力する
- トークンに表示されるワンタイムパスワードを入力する
ユーザー名とパスワードだけの認証では心もとない場合や、自社のセキュリティポリシーにそぐわない場合は、多要素認証を使うことで、よりセキュアにWorkSpacesを利用できる。
インターネットへの接続
ネットワークインターフェース
- それぞれのWorkSpacesは、2つのネットワークインターフェース(ENI)をもつ
- VPCおよびインターネット接続用(ユーザから見える)
- WorkSpaces管理用および画面転送用(AWS側が使用する)
- 管理用ネットワークでは次のポートを使用する
- インバウンド: TCP/UDP 4172(PCoIPでの画面転送), TCP 8200
- アウトバウンド: UDP 55000
管理用ネットワークで使用するポート番号をOS側でブロックすると接続できなくなるので注意する。
インターネットへの接続
WorkSpacesは、デフォルトではインターネットに出られる経路を持っていないため、次のいずれかの方法で経路を作る必要がある。
- Cloud Directory NAT Instanceパターン
- Connected Directory NAT Instanceパターン
- On-Premise Firewallパターン
- Elastic IP Addressパターン
要は、NATインスタンスまたはElastic IPを付与する。
構成1: Cloud Directory NAT Instanceパターン
PublicなサブネットにNATインスタンスを用意し、それを経由してインターネットにアクセスする。NATが1つだけだとダウンした時にまずいので、要件によってはHA構成にした方がよい。
構成2: Connected Directory NAT Instanceパターン
オンプレミスのデータセンターとVPNまたはDirect Connectで接続していることを前提として、社内への接続はVPNを経由し、インターネットへの接続はNATを経由する。オンプレミスとインターネットの両方のリソースにアクセスできる。
構成3: On-Premise Firewallパターン
Internet Gatewayを設置せず、Virtual Private Gateway経由でオンプレミスを通してすべての通信を行う。自社の堅いセキュリティポリシーを遵守する必要がある場合などに採用を検討する。
構成4: EIP (Elastic IP Address)パターン
WorkSpacesのENIに、直接EIPを付与する。Management Console上で確認しながらENIに直接アサインする作業が少し面倒だが、小規模なら可能。VPNやDirect Connect接続がなく、AWS内独立した環境の場合に有効なパターン。
なお、Quick Setupを利用すると、WorkSpacesに自動的にEIPが割り当てられる。
Amazon WorkSpacesのIAMポリシー
IAMポリシーでWorkSpacesのアクセスコントロールができる。WorkSpaces関連のアクションの他に、IAM、EC2、Zocaloの特定のアクションに対しても権限を付ける必要がある。WorkSpacesへのアクションだけを許可しても使えないので注意する。
WorkSpacesのポリシー管理・パッチ管理
WorkSpacesクライアントは、Active Directoryドメインのコンピュータとして管理される。
- 既存の管理ツールを利用できる
-
- たとえば、Windows Server Update Services (WSUS) によるパッチ管理が可能
- WSUSサーバは、同じVPC内のEC2インスタンスに配置してもよいし、オンプレミスに配置してもよい
Tips - ローカルポリシー
WorkSpacesには、次のポリシーがデフォルトで適用されている。
- コンピューターの構成: 管理用テンプレート
- Windowsコンポーネント: リモート デスクトップ サービス(例: オーディオのリダイレクト)
- システム
- ユーザーの構成: 管理用テンプレート
- Windowsコンポーネント: エクスプローラー(例: Cドライブの非表示)
- コントロールパネル: 個人設定
Tips - ソフトウェア配布
後からソフトウェアの配布が必要なときは、次のような方法がある。
- WSUSでWindowsパッチの適用を管理
- グループポリシーを使ったアプリ配布(.msi / .zip)
- ログオンスクリプトでインストール
- サードパーティソフトを使ってアプリ配布
- (例)Microsoft System Center Configuration Manager
WorkSpacesクライアント
- サポートするプラットフォーム
- ネットワーク要件
- TCP/UDP 4172
- TCP 443 (HTTPS)
- TCP 22 (SSH)
- RTT 100ms以下推奨
WorkSpacesのエンドポイントはパブリックな場所に存在することに注意する。また、企業のFireWallはSSHを通さないことにしているポリシーが多く、調整が必要な場合がある。
RTTは250ms以下ならギリギリ快適だが、ベストは100ms。オレゴンリージョンにだけWorkSpacesがあった頃は、140ms程度出ていたが、東京リージョンに来て10〜30msecで繋がるようになった。
Registration Code(登録コード)の入力
別のディレクトリに接続するときは、クライアントからRegistration Codeを再入力すればよい。Registration Codeはディレクトリごとに固有になっている、
言語の選択とプロキシサポート
- WorkSpacesクライアントの詳細設定から言語を設定できる
- 英語/日本語
- プロキシを設定できる
- 社内ネットワークからプロキシを経由して接続できる
- (画面転送用でなく)HTTPSのプロキシなので注意
ローカルプリンターのサポート
- ローカルPCに接続されているプリンタをWorkSpacesから使えるようになった(ただし2014年9月10日の時点でWindowsのみ対応)
- プリンタはWorkSpaces側で自動認識する
- WorkSpaces側にドライバがない場合は、別途インストールが必要
- CortadoのThinPrintやGoogle Cloud Printなども使える
Amazon Zocalo Sync (WorkSpaeces Sync)
- ローカルのフォルダをWorkSpacesと同期できる
- 1ユーザあたり50GB
- 管理者がディレクトリ単位で有効化/無効化できる
- WorkSpacesとは独立して動作する
- 本機能はZocaloサービスの一部
- クライアントは、Amazon Zocalo Client DownloadsからAmazonZocaloSetup.exeを別途導入して実行する
- WorkSpacesユーザは、Zocaloに対する追加課金なしで利用できる
(参考)Amazon Zocalo
- フルマネージド型の企業向けの文書保存・共有サービス
- データはデフォルトで暗号化され、S3にすべて保存される
- WorkSpacesと同様に、既存のActive Directoryと連携してユーザの権限管理ができる
- Zocaloを単体の場合、1ユーザあたり200GBを$5/月で利用できる
- WorkSpacesユーザは50GBまで無料でZocaloを利用でき、$2/月で200GBにアップグレードできる
ただし、東京リージョンではまだZocaloのフル機能が提供されていない。WorkSpacesからは、現在Zocalo syncだけが使えることに注意する。
Amazon WorkSpacesアップデート
次のリージョンで利用可能。
- US-East-1
- US-West-2
- EU (Ireland)
- Asia Pacific (Sydney)
- Asia Pacific (Tokyo) ←New!!
さらに、東京リージョンにやってきたタイミングで日本語化も実施された。
まとめ
- Amazon WorkSpacesは東京リージョンで使える
- デスクトップもクライアントも日本語化されている
- WorkSpaces Connectで、既存ディレクトリとの連携ができる
- Amazon Zocaloとの連携で、ドキュメントの同期やバックアップに対応した
Q&A
- Q: AWS上にActive Directoryを立てたいとき、Cloud Directoryは、Active Directory on EC2で手動で立てることの代わりになりますか? 両者の違いは?
- A: Cloud DirectoryはActive Directoryとほぼ同等の機能を提供しますので、Cloud Directoryを立てて、ドメインの中にEC2インスタンスを追加することも可能です。Active Directory on EC2と同じ使い方ができるでしょう。課金はWorkSpacesに対して行われますので、WorkSpacesのユーザが利用できるものと考えてください。なお、FAQに書いてあるとおり、Cloud Directoryが起動して30日経った後、WorkSpacesが使われていないと、ディレクトリ機能が停止されることがありますので、ご注意ください。
- Q: WorkSpacesは、EC2のダッシュボードに表示されないのですか?
- A: Yes. ただし、Security GroupやENIは、EC2のコンソールに表示されます。
- Q: WorkSpacesのAMIを作成して、他の場所へ展開できますか?
- A: 現在はサポート外です。ユーザからの要望が多いため、カスタムWorkSpacesバンドルとして、将来的に追加される予定です。
- Q: Zocaloの容量の上限を管理者が設定することはできますか?
- A: ユーザ単位で容量を設定できます。それを超えての保存はできません(保存できないので課金もされません)。超えた場合は追加課金が発生します。
- Q: ローカルPCとの間でデータを転送した場合の費用は、WorkSpacesの費用になるのでしょうか?
- A: Yes. Zocaloを単体で使う場合はZocaloの費用になります。WorkSpacesとZocaloの同期によって、追加の転送料がZocalo側にかかることはありません。
- Q: Direct ConnectやVPNで接続した拠点からのみ、WorkSpacesに接続するような構成は可能ですか?
- A: 現時点ではエンドポイントがパブリックなので、特定拠点のみからの接続はできません。ただ、VPNを通じての(社内からのみの)接続はできませんが、Direct Connectの専用線を通して画面転送をすることは、Direct Connectの設定で可能です。
- Q: 週末メンテナンスの具体的な内容は何ですか?
- A: (補足しますと、WorkSpacesではメンテナンス時間があらかじめ決められています。リージョンの時間帯にあわせて週末の0〜4時などです)メンテナンスは、かならずしも毎週行うわけではありません。WorkSpcaesのインフラ修正が必要になった時などに行います。その時にはWorkSpacesの一時停止がありえます。メンテナンス時間を利用してアップデートを行いますので、一時的に接続できなかったり、WorkSpacesが再起動されたりすることがあります。
- Q: ユーザプロファイルは保存されないのでしょうか? そうだとすれば、どのタイミングでリセットされるのでしょうか?
- A: ユーザプロファイル自体はDドライブに保存されます。Windowsの世界からみるとローカルプロファイルということになります。ちなみに、Dドライブは12時間に一度、スナップショットでバックアップが取られますので、ドライブが破損しても最悪12時間前の状態に戻すことができます。
- Q: オンプレミスのActive DirectoryからCloud Directoryにドメインを移行できますか?
- A: Cloud Directoryを立てるときは、完全に新規のドメインになってしまうので、オンプレミスの情報を引き継ぐことはできないと思われます。オンプレミスのIDを引き継ぐ必要がある場合は、WorkSpaces Connectをご利用ください。
- Q: クライアント1セッションあたりのネットワーク帯域は、どの程度を見込めばよいでしょうか。
- A: 使い方によりますが、たとえば、テキストデータであれば100k〜200kbpsに収まるでしょう。動画再生のように画面が激しく動く場合は、画面転送に必要な帯域も増えますので、極端な場合で数MBbpsもありえます。平均的には100kbpsくらいを見込めばよいと思います。
参考資料
感想
いやー、Q&Aも含めてすごい情報量でしたね。
多要素認証ができること、企業のプロキシサーバからの接続ができること、そしてZocaloと連携してZocaloのサービスを使えることなどを初めて知りました。
認証周りを含めサーバをWindows系で揃えている企業が、今後オンプレミスからAWSへ移行する時には、ぜひ活用したいサービスになるのでしょうね。
お客様の移行をお手伝いする時までに、しっかりキャッチアップしておきます!
それでは、また。